from chromadb import QueryResult
from more_itertools import collapse


def flat_document(query_result: QueryResult) -> list[str]:
    """
    平铺多层嵌套结果
    :param query_result: chroma的查询结果
    :return: list[str]
    """
    if query_result is None:
        return []
    query_result = query_result.get('documents')
    if query_result is None or len(query_result) == 0:
        return []
    return list(collapse(query_result))
